Relevant multimedia advertising targeted based upon search query

ABSTRACT

A facility for processing a search query is described. The facility identifies one or more items that satisfy the query, at least one of which is a media sequence. For each identified media sequence, the facility identifies an advertising message based upon the contents of the query. In response to the query, the facility returns a search result that indicates the identified items. When one of the identified media sequences is selected in the search result, the selected media sequence is provided in conjunction with the advertising message identified for it.

CROSS-REFERENCE TO RELATED APPLICATION

The present application claims the benefit of U.S. Provisional Patent Application No. 60/585,563, filed Jul. 2, 2004, which is hereby incorporated by reference in its entirety.

TECHNICAL FIELD

The described technology is directed to the field of electronic advertising.

BACKGROUND

Media sequences of various kinds are available to users from various sources via the World Wide Web (“the web”). As examples, a user may access an audio sequence containing a song, a lecture, or a radio program; a video sequence containing a sports contest or silent-movie scene; or an audio/video sequence containing a movie, music video, television program, or news report.

Because the cost can be high for providing the storage and bandwidth resources needed to make media sequences available via the web, some media sequence providers sell advertising to be included in media sequences accessed via the web to defray these costs. In one common conventional approach, providers of media sequences select for each primary media sequence they make available an advertising message whose subject is similar to the subject of the primary media sequence, and whose media type is the same as the primary media sequence. For example, to a primary media sequence that is an audio/video news report about a hurricane in the Bahamas, the media sequence provider may attach an audio/video advertisement for a weather information service.

While this conventional approach may result in at least modest advertising revenue, it has the disadvantage that it causes the same advertising message to be shown to every user accessing the primary media sequence. Where the users accessing a particular primary media sequence have divergent interests, such “blanket” advertising may be less productive.

Accordingly, an approach that permitted advertising messages attached to media sequences to be more specifically targeted to the users accessing the video sequences would have significant utility.

BRIEF DESCRIPTION OF THE DRAWINGS

FIG. 1 is a high-level block diagram showing a typical environment in which the facility operates.

FIG. 2 is a flow diagram showing steps typically performed by the facility in order to process a query.

FIG. 3 is a data structure diagram showing sample contents of an advertising message information table used by the facility in some embodiments to select advertising messages based upon query contents.

FIG. 4 is a display diagram showing sample contents of a display generated by the facility in which still images from selected advertising messages are displayed alongside the media sequence.

DETAILED DESCRIPTION

A software facility for selecting targeted advertising messages for deployment with media sequences (“the facility”) is provided. The facility operates in connection with a multimedia search engine, such as the multimedia search engines described in U.S. patent application Ser. No. 09/878,866 filed Jun. 11, 2001; U.S. patent application Ser. No. 09/878,876 filed Jun. 11, 2001; U.S. patent application Ser. No. 09/876,941 filed Jun. 8, 2001; U.S. patent application Ser. No. 09/876,925 filed Jun. 8, 2001; U.S. patent application Ser. No. 10/432,316 filed May 21, 2003; U.S. patent application Ser. No. 10/432,258 filed May 21, 2003; U.S. patent application Ser. No. 10/432,306 filed May 21, 2003; U.S. patent application Ser. No. 10/432,388 filed May 21, 2003; U.S. patent application Ser. No. 10/415,021 filed Apr. 24, 2003; U.S. patent application Ser. No. 10/415,216 filed Apr. 24, 2003; and U.S. patent application Ser. No. 10/415,210 filed Apr. 24, 2003, each of which is hereby incorporated herein by reference in its entirety. When a user submits a query made up of search terms to a multimedia search engine, the query is used for two purposes: (1) to generate a search result containing controls such as links that can be used to download and/or render media sequences satisfying the query; and (2) to select one or more media sequence advertising messages to be deployed with the media sequences satisfying the query when downloaded and/or rendered. In various embodiments, the facility deploys the selected advertising messages in a variety of ways, including (1) inserting the advertising message into, or “attaching it to,” the media sequences that satisfy the query, or (2) while a media sequence satisfying the query is being downloaded and/or rendered, displaying still image thumbnails of the selected advertising messages that the user may activate in order to view the selected advertising messages. For example, where a music video media sequence for the song Hollywood by the artist Madonna appears in the search result for the query “Madonna,” the facility may insert an advertising message for Madonna's newest album into the music video or display thumbnail for such advertising message alongside the music video. On the other hand, when the music video appears in the search result for the query “Hollywood,” the facility may instead deploy the music video with an advertising message for Hollywood tourist attractions. By selecting and deploying an advertising message with media sequences in some or all of the ways described above, the facility enables a media sequence provider to obtain additional revenue from presenting an advertising message likely to be relevant to the user performing the search.

FIG. 1 is a high-level block diagram showing a typical environment in which the facility operates. The block diagram shows several client computer systems, such as client computer systems 110, 120, and 130. Each of the client computer systems has a web client computer program that a user of the client computer system can use to browse the World Wide Web, such as web clients 111, 121, and 131. Such web clients typically allow their users to submit queries to multimedia search engines, and play media sequences listed in search results produced in response to those queries. The client computer systems are connected via the Internet 140 to a server computer system 150 hosting the facility. Those skilled in the art will recognize that client computer systems could be connected to the server computer system by networks other than the Internet, however.

The server computer system 150 contains a memory 160. The memory 160 preferably contains the facility 161, comprising one or more programs 162, as well as data 163. Data 163 typically includes data relating single or multi-word search terms to advertising messages of one or more media sequence types. Such data may reflect the results of various kinds of advertising message sales techniques, such as auctions or outright purchase of particular search terms by advertisers or their representatives. The memory preferably further contains a web server computer program 164 for delivering web pages in response to requests from web clients. While items 161-164 are preferably stored in memory while being used, those skilled in the art will appreciate that these items, or portions of them, maybe be transferred between memory and a persistent storage device 172 for purposes of memory management and data integrity. The server computer system further contains one or more central processing units (CPU) 171 for executing programs, such as programs 161-164, and a computer-readable medium drive 173 for reading information or installing programs such as the facility from computer-readable media, such as a floppy disk, a CD-ROM, or a DVD.

While various embodiments of the facility are described in terms in the environment described above, those skilled in the art will appreciate that the facility may be implemented in a variety of other environments including a single, monolithic computer system, as well as various other combinations of computer systems or similar devices connected in various ways. In particular, the facility may interact with users via a wide range of portable and/or wireless user interface devices, such as cellular telephones, pagers, personal digital assistants, etc.

FIG. 2 is a flow diagram showing steps typically performed by the facility in order to process a query. In step 201, the facility receives the query. In step 202, the facility generates a set of media sequences that is responsive to the query. In some embodiments, the facility performs step 202 using multimedia search engine techniques described in one or more of the patent applications listed above. In step 203, the facility selects one or more advertising messages based upon the contents of the query. The selected advertising messages may include advertising messages of one or more media types, and/or media sequences relating to one or more different subjects associated with contents of the query.

FIG. 3 is a data structure diagram showing sample contents of an advertising message information table used by the facility in some embodiments to select advertising messages based upon query contents. The advertising message information table 300 is made up of rows, such as rows 301-303, each corresponding to a different combination of an advertising message with one or more search terms used to select the advertising message. Each row contains information in the following columns: a search terms column 311 containing one or more search terms associated with the advertising message; a media type column 312 indicating a media type of the advertising message; an advertiser column 313 containing identifying information for the advertiser on whose behalf the advertising message will be presented; a media address column 314 containing an address from which the advertising message media sequence may be retrieved; and a message id column 315 containing an identifier for the advertising message that may be used to maintain presentation statistics for the advertising message, bill the advertiser for presenting the advertising message, etc. For example, row 302 indicates that an avi advertising message for GMC having identifier 9128314 and available from media address www.mediahost.com/gmc0083.avi may be selected for attachment to media sequences included in a search result produced for a search query containing the search term “General Motors.”

The facility typically identifies rows of the advertising message information table that in the search terms column contains search terms that match search terms in the query. In some cases, the facility further seeks to match the media type of selected advertising messages either directly to the media type of each of the principle media sequences, or to a group of media types that includes the media type of the principle media sequence, such as a group of audio/video media sequence media types, or a group of media sequence media types supported by a particular media viewer program, etc. In some embodiments, the facility selects the advertising messages associated with all rows of the advertising message information table whose search terms match the query. In some embodiments, the facility selects the advertising messages associated with the rows of the advertising message information table whose search terms most significantly match the query.

While FIG. 3 shows a table whose contents and organization are designed to make them more comprehensible by a human reader, those skilled in the art will appreciate that actual data structures used by the facility to store this information may differ from the table shown, in that they, for example, may be organized in a different manner; may contain more or less information than shown; may be compressed and/or encrypted; etc.

Returning to FIG. 2, in some embodiments, in step 203, the facility employs additional information to select advertising messages that are as relevant as possible to the user. Such additional information may include profile or preference information established for the user; metadata associated with one or more of the media sequences in the set generated in step 202; information provided by the advertiser or a designee of the advertiser; instructions to manually override the advertising messages selected for particular queries, query terms, resulting media sequences, or groups of resulting media sequences, such as those issued by the advertiser using campaign management software; etc.

In steps 204-206, the facility loops through each media sequence in the set generated in step 202. In step 205, the facility generates a link that causes one of the advertising messages selected in step 203 to be presented in conjunction with the media sequence when the link is dereferenced. This advertising message is generally of a media sequence type that is either the same as, or otherwise compatible with the media sequence type of the media sequence. The advertising message may be chosen based upon information associated with the media sequence, such as metadata attributed to the media sequence. In some cases, the generated link causes more than one of the selected advertising messages to be presented in conjunction with the media sequence.

In some embodiments, the facility generates the link in step 205 in a manner that causes the selected advertising message to be attached to the media sequence. The generated link may cause the selected advertising message to be presented in various positions relative to the media sequence, such as before the media sequence, after the media sequence, during the media sequence, or throughout the media sequence or portions of the media sequence. Table 1 below shows sample contents for a link generated by the facility in step 205. TABLE 1 http://sponsoredvideo.aol.com/play?content=www.varchive.net/sloane_speech.avi? ad=www.mediahost.com/gmc00083.avi

The portion of the sample link before the first question mark directs a request to a server capable of concatenating one or more advertising messages with a media sequence. The portion of the sample link between the first and second question marks identifies the media sequence to the server, while the portion after the second question mark identifies the advertising message to the server. When the server receives this request, it retrieves both the advertising message and the media sequence, concatenates them, and serves the concatenated result to the client. In some embodiments, the facility constructs the link in such a way as to direct the request to a server for the advertising message that is capable of retrieving and concatenating the media sequence, or a server for the media sequence that is capable of retrieving and concatenating the advertising message. In some embodiments, the facility encodes the contents of the link to make it more difficult or impossible to identify the URL of the advertising message and/or the media sequence without possession of data stored on the server. For example, as shown below in Table 2, the parameters containing the URLs for the media sequence in the advertising message may be replaced with numerical or other identifiers that are mapped to the corresponding URLs on the server. TABLE 2 http://sponsoredvideo.aol.com/play?contentid=2306022&adid=9235255

In some embodiments, the facility encrypts the media sequence and advertising message parameters such that they can be decrypted using a key stored on the server, as shown below in Table 3. TABLE 3 http://sponsoredvideo.aol.com/play?d098sdgds4o8sgdog84h4e4kjh

In some embodiments, the link is constructed to point to a custom media metafile, such as an .asx file, hosted by the facility. Sample contents for such an .asx file corresponding to the example shown in Table 1 are shown below in Table 4. TABLE 4 ref1=www.mediahost.com/gmc00083.avi ref2=www.varchive.net/sloane_speech.avi

In some embodiments, in step 205, the facility further causes visual information identifying a provider of the media sequence to be displayed, such as between the display of the media sequence and the display of the advertising message.

In some embodiments, the facility constructs the link in step 205 in such a way as to cause the client to display the media sequence with thumbnail still images for one or more selected advertising message alongside. FIG. 4 is a display diagram showing sample contents of a display generated by the facility in which still images from selected advertising messages are displayed alongside the media sequence. The diagram shows a page 400, such as a dynamically generated page, to which the link generated in step 205 points. The page includes an embedded media player 410, comprising a display pane 411 for displaying media sequences, as well as controls 412 for controlling the display of media sequences. When the page is loaded, the media sequence with which the link to the page is associated is played in the display pane 411 of the embedded media player. At the same time, advertising message thumbnails are displayed at thumbnail positions 421-423 near the embedded media player. The user can activate an advertising message thumbnail, such as by clicking it or hovering the mouse cursor over it. In response, the page displays the advertising message associated with the advertising message thumbnail. This advertising message may be displayed in a variety of locations, including in-place in its thumbnail position, in the embedded media player 410 in which the media sequence is displayed, or in a second embedded media player that is opened elsewhere in the page, such as in the portion of the page occupied by the thumbnail positions.

In step 206, if additional media sequences in the set remain to be processed, then the facility continues in step 204 to process the next media sequence in the set, else the facility continues in step 207. In step 207, the facility generates a query result containing the links generated in step 205. In step 208, the facility replies to the query received in step 201 with the query result generated in step 207. After step 208, the facility continues in step 201 to receive the next query.

Those skilled in the art will appreciate that the steps shown in FIG. 2 may be altered in a variety of ways. For example, the order of the steps may be rearranged; substeps may be performed in parallel; shown steps may be omitted, or other steps may be included; etc.

In some embodiments, rather than deploying an advertising message with a primary media sequence by its construction of a link to the primary media sequence that is included in the search result, the facility instead includes either the advertising message itself or a link to the advertising message within a version of the primary media sequence that is served to the user who receives the search result. In these embodiments, where the user saves a copy of the served media sequence, the advertising message can be presented to the user each time the user plays the saved media sequence.

In some embodiments, rather than selecting an advertising message to deploy with a primary media sequence before generating the search result, the facility instead defers selection of an advertising message to deploy until after the user has selected the media sequence from the search result for retrieval. For example, the link to a media sequence included in the search result may include information usable by the facility to select an advertising message, such as search terms contained in the query. Table 5 below shows a link similar to the link of Table 2 in which the advertising message identifier parameter has been replaced with a parameter indicating the query string “general motors.” TABLE 5 http://sponsoredvideo.aol.com/play?contentid=2306022&query=general%20motors

Further, in some embodiments, the facility stores information inside the primary media sequence that causes a media player program playing the media sequence to call the facility for selection and deployment of an advertising message each time the media sequence is played. This “late-binding” of advertising messages can enable the facility to select even the most recently-introduced advertising messages. Indeed, it can cause advertising messages to be presented that are not available when the search result is generated, or even when the media sequence is served.

It will be appreciated by those skilled in the art that the above-described facility may be straightforwardly adapted or extended in various ways. For example, the facility may be used with media sequences and/or advertising messages of various media sequence types. Further, the facility may use a variety of mechanisms to attach advertising messages to media sequences. Additionally, the facility may attach advertising messages to media sequences made available in a variety of forms, such as streaming or downloaded forms. Also, the facility may be implemented in conjunction with a variety of other multimedia searching and/or advertising functionality. Further, the facility may be used by various combinations of parties, including advertisers, advertising agencies, electronic publishers, intermediaries of various types, etc. Advertising revenue may be collected from various combinations of these parties, and distributed to various combinations of these parties. While the foregoing description makes reference to preferred embodiments, the scope of the invention is defined solely by the claims that follow and the elements recited therein. 

1. A method in a computing system for processing a search query, comprising: identifying one or more media sequences satisfying the query; identifying for each identified media sequence an advertising message having metadata matching terms contained by the query; and in response to the query, returning a search result indicating the identified items, such that when one of the identified media sequences is selected in the search result, it is displayed in conjunction with the advertising message identified for the selected media sequence.
 2. The method of claim 1 wherein, when one of the identified media sequences is selected in the search result, it is displayed with the advertising message identified for the identified media sequence incorporated into it.
 3. The method of claim 1 wherein, when one of the identified media sequences is selected in the search result, it is displayed proximate to a still image for the advertising message identified for the identified media sequence that can be activated to display the advertising message for the identified media sequence.
 4. The method of claim 1, further comprising, for each of the identified media sequences, adding a link to the returned search result that specifies the advertising message identified for the identified media sequence and that, when followed, causes the advertising message identified for the identified media sequence to be displayed in connection with the identified media sequence.
 5. The method of claim 4 wherein, for each of the identified media sequences, the link added to the returned search result for the identified media sequence causes a browser in which the search result is displayed to independently retrieve the identified media sequence and the advertising message identified for it when followed.
 6. The method of claim 5 wherein the link added to the returned search result for the identified media sequence causes the browser in which the search result is displayed to retrieve a metafile, that in turn causes the browser to independently retrieve the identified media sequence and the advertising message identified for it.
 7. The method of claim 6 wherein the link added to the returned search result for the identified media sequence contains information identifying both the identified media sequence and the advertising message identified for it, as well as a server capable of (1) retrieving the identified media sequence and identified advertising message, (2) concatenating them, and (3) returning the result of the concatenation.
 8. The method of claim 4 wherein, for each of the identified media sequences, the link added to the returned search result for the identified media sequence causes a browser in which the search result is displayed to retrieve a single file containing the identified media sequence and the advertising message identified for it when followed.
 9. The method of claim 1 wherein each identified media sequence has a type that is among a category of types, and wherein, for each identified media sequence, an advertising message is identified that has a type that is among the same category of types as the type of the identified media sequence.
 10. The method of claim 1 wherein each identified advertising message is a media sequence.
 11. The method of claim 1 wherein, for a distinguished identified media sequence, an advertising message is identified in response to a request to retrieve the distinguished media sequence.
 12. The method of claim 1 wherein, for a distinguished identified media sequence, an advertising message is identified in response to a request to play the distinguished media sequence.
 13. The method of claim 1 wherein, when one of the identified media sequences is selected in the search result, the display of the identified media sequence is separated from the display of the advertising message identified for the identified media sequence by the display of a visual indication of a provider of the selected media sequence.
 14. A computer-readable medium whose contents cause a computing system to perform a method for processing a search query, comprising: identifying one or more items satisfying the query, at least one of the identified items comprising a media sequence; identifying for each identified media sequence an advertising message based upon contents of the query; and in response to the query, returning a search result indicating the identified items, such that when one of the identified media sequences is selected in the search result, it is provided in conjunction with the advertising message identified for the selected media sequence.
 15. The computer-readable medium of claim 14, wherein the method further comprises, for each of the identified media sequences, adding a link to the returned search result that specifies the advertising message identified for the identified media sequence and that, when followed, causes the advertising message identified for the identified media sequence to be provided in connection with the identified media sequence.
 16. The computer-readable medium of claim 15 wherein, for each of the identified media sequences, the link added to the returned search result for the identified media sequence causes a browser in which the search result is displayed to independently retrieve the identified media sequence and the advertising message identified for it when followed.
 17. The computer-readable medium of claim 15 wherein, for each of the identified media sequences, the link added to the returned search result for the identified media sequence causes a browser in which the search result is displayed to retrieve a single file containing the identified media sequence and the advertising message identified for it when followed.
 18. The computer-readable medium of claim 14 wherein each identified media sequence has a type that is among a category of types, and wherein, for each identified media sequence, an advertising message is identified that has a type that is among the same category of types as the type of the identified media sequence.
 19. The computer-readable medium of claim 14 wherein, for a distinguished identified media sequence, an advertising message is identified before the search result is returned.
 20. The computer-readable medium of claim 14 wherein, for a distinguished identified media sequence, an advertising message is identified after the search result is returned.
 21. The computer-readable medium of claim 14 wherein, for a distinguished identified media sequence, an advertising message is identified in response to a request to retrieve the distinguished media sequence.
 22. The computer-readable medium of claim 14 wherein, for a distinguished identified media sequence, an advertising message is identified in response to a request to play the distinguished media sequence.
 23. One or more computer memories that collectively contain a media sequence advertising data structure, comprising, for each of a plurality of media sequence advertisements: information indicating one or more search terms to which the media sequence advertisement relates; and information usable to retrieve the media sequence advertisement, such that the contents of the data structure may be used to construct a search result for a search query that contains links to one or more primary media sequences, each contained link causing a media sequence advertisement relating to search terms contained in the search query to be presented together with the primary media sequence of the link when dereferenced.
 24. The computer memories of claim 23 wherein the data structure further comprises, for each of the plurality of media sequence advertisements, an indication of a media sequence type of the media sequence advertisement, such that, for each of the primary media sequences, a media sequence advertisement may be selected that has the same media sequence type.
 25. The computer memories of claim 24 wherein the indication of a media sequence type of the media sequence advertisement indicates a media sequence filename extension.
 26. The computer memories of claim 24 wherein the indication of a media sequence type of the media sequence advertisement indicates a class of media sequence filename extensions.
 27. One or more propagated data signals collectively conveying a married media sequence link data structure generated in response to a query containing query terms, the data structure comprising data such that, when the link is dereferenced, a primary media sequence having metadata matching one or more of the query terms contained by the query is presented together with an advertisement media sequence having metadata matching one or more of the query terms.
 28. The data signals of claim 27 wherein an advertiser benefits from the presentation of the advertisement media sequence, and wherein the metadata of the advertisement media sequence is specified by the advertiser.
 29. The data signals of claim 27 wherein the data structure explicitly identifies the primary media sequence.
 30. The data signals of claim 29 wherein the data structure further explicitly identifies query terms contained by the query that may be used to select the advertisement media sequence.
 31. The data signals of claim 27 wherein the data structure explicitly identifies the advertisement media sequence.
 32. The data signals of claim 27 wherein the data structure explicitly identifies the primary media sequence and the advertisement media sequence.
 33. The data signals of claim 32 wherein the data structure explicitly identifies the primary media sequence and the advertising media sequence by containing a URL usable to retrieve the primary media sequence and containing a URL usable to retrieve the advertisement media sequence.
 34. The data signals of claim 32 wherein the data structure explicitly identifies the primary media sequence and advertising media sequence by containing an identifier for the primary media sequence that may be mapped to the primary media sequence and an identifier for the advertisement media sequence that may be mapped to the advertisement media sequence.
 35. The data signals of claim 32 wherein the data structure explicitly identifies the primary media sequence and the advertisement media sequence by containing an encrypted version of both a URL usable to retrieve the primary media sequence and a URL usable to retrieve the advertisement media sequence.
 36. The data signals of claim 27 wherein the data structure explicitly identifies a data structure containing both the primary media sequence and the advertisement media sequence.
 37. One or more propagated data signals collectively conveying a data structure defining a display that is generated in response to a query containing query terms, the data structure comprising data that establishes in the defined display a media sequence rendering region in which a primary media sequence having metadata matching one or more of the query terms contained by the query is rendered, as well as one or more advertising image regions, in each of which an advertising image is displayed that has metadata matching one or more of the query terms.
 38. The data signals of claim 37, wherein the data structure further comprises data such that a user may activate one of the advertising images to display an advertising media sequence associated with the activated advertising image.
 39. The data signals of claim 38, wherein the advertising media sequence is displayed in the media sequence rendering region.
 40. The data signals of claim 38, wherein the advertising media sequence is displayed in the advertising image region of the activated advertising image.
 41. The data signals of claim 38, wherein the advertising media sequence is displayed in a region that is larger than and contains the advertising image region of the activated advertising image. 